The present disclosure relates to sharing display space among applications in an application execution environment and, in particular, where sharing the display space is based on a hierarchical data structure.
Generally, a display list is used to structure graphical objects and is used to render information to a display space (e.g., a display surface within a graphical user interface). The graphical objects in the display list represent commands that affect the information rendered to the display space. For example, the graphical objects in the display list can specify that a particular point, line or shape be drawn to a particular location in the display space using a particular color or style.
In some systems, a display space can be shared by multiple applications by partitioning the display space into separate windows or frames which can be assigned to a particular application. Each application is allowed to draw only into the window or frame to which it has been assigned.
In other systems, multiple applications are allowed to draw to a single display space. In doing so, an application can add graphical objects to a display list that is shared by the other applications sharing the display space. Such systems allow the applications to access and even manipulate some or all of the properties of graphical objects in the display list that were created and added by other applications.